Device, system and method of I/Q mismatch correction

ABSTRACT

A method of assigning values to parameters for IQ mismatch cancellation. The method includes providing values to a processing path of a communication device, passing the provided values through au IQ modulator, at least one non-linear element and an IQ demodulator, to produce distorted values, and estimating at least one parameter for cancellation of IQ mismatch effects of the communication device responsive to the provided values and to the distorted values.

BACKGROUND OF THE INVENTION

Many transmitters transmit digital information values that are generatedin base band. The base band digital values are modulated onto a carrierhigh frequency signal and the combined signal is amplified before itstransmission. The base band values may be complex values having real andimaginary components which are traditionally referred to as I and Qcomponents, respectively. In the modulation of the base band signal andamplification of the modulation signal, inaccuracies are introduced.These inaccuracies may cause the transmitter to interfere with signalson carrier frequencies allocated to other transmitters and thereforeshould be at least partially canceled by the transmitter.

One of these inaccuracies, which is due mainly to an IQ modulator of thetransmitter, is referred to as IQ mismatch which is generally modeled bythe following equation: $\begin{matrix}{{\overset{\_}{V}}_{q} = {\begin{pmatrix}I_{q} \\Q_{q}\end{pmatrix} = {\begin{bmatrix}{\cos(\varphi)} & {\sin\left( {- \varphi} \right)} \\{b\quad{\sin\left( {- \varphi} \right)}} & {b\quad{\cos(\varphi)}}\end{bmatrix}\begin{pmatrix}I_{d} \\Q_{d}\end{pmatrix}}}} & (1)\end{matrix}$in which I_(d), Q_(d) are the real and imaginary input base band valuesof the modulator, I_(q), Q_(q) are the real and imaginary base bandequivalent output values of the modulator and (φ,b) are constants whichdescribe the IQ mismatch of the modulator. This inaccuracy may becompensated for by a mismatch correction multiplier. It is required,however, to estimate the parameters of the mismatch correctionmultiplier.

Another inaccuracy is due to the non-linearity of the amplification ofthe transmitted signal. The non-linearity may be compensated for by apredistorter.

BRIEF DESCRIPTION OF FIGURES

Particular embodiments of the invention will be described with referenceto the following description of the embodiments, in conjunction with thefigures, wherein identical structures, elements or parts which appear inmore than one figure are labeled with a same or similar number in allthe figures in which they appear, and in which:

FIGS. 1A and 1B are a schematic block diagram of a transmitter, inaccordance with an embodiment of the present invention;

FIG. 2 is a schematic functional block diagram of an apparatus whichincludes mismatch cancellation circuits, in accordance with anembodiment of the present invention;

FIG. 3 is a flowchart of the actions performed by a mismatch trainer, inaccordance with an embodiment of the present invention;

FIG. 4 is a flowchart of the actions performed in estimating correctedparameter values for mismatch cancellation, in accordance with anembodiment of the present invention; and

FIG. 5 is a graph comparing the performance of a transmitter inaccordance with an embodiment of the present invention and a similartransmitter which may not perform IQ mismatch cancellation.

DETAILED DESCRIPTION OF EMBODIMENTS

FIGS. 1A and 1B are a schematic block diagram of a transmitter 30, inaccordance with an exemplary embodiment of the present invention.Transmitter 30 comprises a transmission modulation path 33 whichreceives bits and shapes them for transmission over an antenna 25. In anexemplary embodiment of the invention, modulation path 33 includes a π/4DQPSK (Differential Quadrature Phase Shift Keying) modulator 32, a firstinterpolator 36, a second interpolator 38, a predistorter 80, a mismatchmultiplier 40, a third interpolator 42, a digital to analog converter(DAC) 44, a reconstruction filter (RCF) 46, an IQ modulator 48 and apower amplifier 23.

A directional coupler 52 senses the signals transmitted by amplifier 23and passes them through a reverse conversion unit 55 which substantiallyreverses the operation of an ending portion of modulation path 33,bringing the signals back to a state in which they can be compared tothe signals provided by second interpolator 38. In some embodiments ofthe invention, IQ modulator 48 and conversion unit 55 may be included ina single, optionally standard, chip. It is noted that in someembodiments of the invention, transmitter 30 does not have anyadditional reverse conversion paths which convert, to base band form,signals from after modulator 48 and/or DAC 44.

In an exemplary embodiment, reverse conversion unit 55 comprises an IQdemodulator 54 (corresponding to modulator 48), a filter 56, a sampleand hold (S/H) 58, and an analog to digital converter (ADC) 60 (whichtogether correspond to DAC 44) and a mismatch multiplier 62(corresponding to multiplier 40).

In some embodiments of the invention, the signals from reverseconversion unit 55 are provided to a predistorter trainer 70 and to amismatch trainer 77 together with the samples from second interpolator38. In some embodiments of the invention, the samples from secondinterpolator 38 are passed through a delay unit 68 which delays them forsubstantially the time required for the samples to pass through path 33and return through reverse conversion unit 55. Thus, trainers 70 and 77receives pairs of values representing the same sample, a vector V_(m)from interpolator 38 and a vector V_(f) from after the return throughconversion unit 55.

Predistorter trainer 70 uses vectors V_(m) and V_(f) to monitor valuesof a look up table (LUT) 84 of predistorter 80 such that thepredistorter compensates for non-linearities of modulation path 33,especially of amplifier 23. The compensation is performed, for example,by multiplying the values provided to IQ modulator 48 by respectivevalues from LUT 84. In an exemplary embodiment, trainer 70 operatesusing a two stage method, including an initial value assignment stageand an adaptive stage. During the initial stage trainer 70 accumulates aplurality of pairs of values which represent the non-linearity andoptionally uses the accumulated pairs in creating a polynomial model ofthe non-linearities. The values of LUT 84 are adjusted based on thepolynomial model. Mismatch trainer 77 assigns digital values tocorrection 2×2 matrices B1 (41) and B2 (63) which are optionally used bymismatch multipliers 40 and 62 in canceling the mismatch effects ofmodulator 48 and demodulator 54, respectively. In some embodiments ofthe present invention, mismatch trainer 77 determines the values to beassigned to matrices 41 and 63 based on the received pairs of vectorsV_(m) and V_(f). In some embodiments of the invention, the digitalvalues in LUT 84 are close to the values required to compensates for thenon-linearities, before mismatch trainer 77 begins to operate. In theseembodiments, mismatch trainer 77 may be planned to operate based on theassumption that the mismatch errors in transmitter 30 are relativelysmall.

FIG. 2 is a schematic functional block diagram of elements relevant tomismatch cancellation in an apparatus 300 which includes mismatchcancellation circuits, in accordance with an embodiment of the presentinvention. Apparatus 300 may be for example a communication device, suchas transmitter 30 of FIGS. 1A and 1B, a receiver or any other apparatuswhich suffers from IQ mismatch. A vector of signals {overscore(V)}_(m)=(I_(m),Q_(m)), formed of a real part I_(m) and an imaginarypart Q_(m) is provided to a sequence of non-linear elements 320, 330 and340 which includes a signal processing path. One or more of thenon-linear elements, e.g., elements 320 and 340, cause IQ mismatchdistortions which are corrected by respective IQ correction units 322and 342. The distortions of non-linear elements 320 and 340 are modeledin accordance with equation (1), with unknown parameters (φ₁,b₁) and(φ₂,b₂), respectively, replacing (φ,b). Non-linear elements 320 and 340,may be, for example, IQ modulator 48 and IQ demodulator 54 oftransmitter 30.

In some embodiments of the invention, IQ correction units 322 and 342comprise respective multipliers 324 and 344 which correct thedistortions of the respective modulator/demodulator. Multipliers 324 and344 multiply the signals passing through them by matrices 326 and 346,respectively, which have the form: $\begin{matrix}{{B_{i} = {{{\frac{1}{\cos\left( {2\theta_{i}} \right)}\begin{bmatrix}{\cos\left( \theta_{i} \right)} & {\beta_{i}{\sin\left( \theta_{i} \right)}} \\{\sin\left( \theta_{i} \right)} & {\beta_{i}{\cos\left( \theta_{i} \right)}}\end{bmatrix}}\quad i} = 1}},2} & (2)\end{matrix}$in which (θ₁,β₁,θ₂,β₂) are parameters which are set by a mismatchtrainer 377. In some embodiments of the invention, parameters(θ₁,β₁,θ₂,β₂) are estimated, as described hereinbelow, to bring theirvalues as close as possible to the distortions of non-linear elements320 and 340, represented in the following description by matrices A_(i).When parameters (θ_(i),β_(i)) i=1, 2 are substantially equal to$\left( {\varphi_{i},\frac{1}{b_{i}}} \right),$respectively, the distortions of non-linear elements 320 and 340 aresubstantially completely compensated for, as A_(i)B_(i)≈I (I being the2×2 identity matrix) for i=1, 2.

Optionally, the vectors {overscore (V)}_(m) are predistorted by apredistorter 380 into {overscore (V)}_(d)=(I_(d),Q_(d)) using fixedvalues from a LUT 384, before the vectors are provided to non-linearelement 320.

In some embodiments of the invention, non-linear element 330 has acomplex-valued base band equivalent transfer function which isoptionally modeled by: $\begin{matrix}{G_{PA} = \begin{bmatrix}g_{I} & {- g_{Q}} \\g_{Q} & g_{I}\end{bmatrix}} & (3)\end{matrix}$in which g_(I), g_(Q) are the real and imaginary components,respectively, of the complex valued gain of non-linear element 330. Itis noted that generally, g_(I), g_(Q) depend on the input signalamplitude of non-linear element 330.

Thus, non-linear element 340 provides at its output vectors {overscore(V)}_(f)=(I_(f),Q_(f)) which are related to vectors V_(d) according to:V _(f) =B ₂ A ₂ G _(PA) A ₁ B ₁ V _(d)  (4)

In some embodiments of the invention, as described hereinbelow in detailwith respect to FIGS. 3 and 4, mismatch trainer 377 iteratively adjuststhe values of parameters (θ₁,β₁,θ₂,β₂) based on vector pairs(V_(m),V_(f)) handled by apparatus 300 during adjustment periods. Ineach of one or more repetitions of the iterative adjustment performed bymismatch trainer 77, the trainer estimates a correction value of one ormore of parameters (θ₁,β₁,θ₂,β₂) which minimizes the mismatch error notcorrected by multipliers 324 and 344. It is noted that the vectors V_(f)received by mismatch trainer 77 are altered relative to the respectivevectors V_(d) by a plurality of non-linear elements which have complexvalued transfer functions, e.g., a modulator, a demodulator and a poweramplifier. In some embodiments of the invention, the non-linear elementscomprise RF elements.

FIG. 3 is a flowchart of the actions performed by mismatch trainer 377,in accordance with some embodiments of the present invention. Whenapparatus 300 is operated, optionally after various initializationprocedures described hereinbelow, mismatch trainer 377 assigns (block100) initial values to matrices 326 and 346, i.e., assigns values toparameters (θ₁,β₁,θ₂,β₂), referred to cumulatively as Φ. In anembodiment of the invention, the initial values of matrices 326 and 346are predetermined values which are calibrated in the manufacturingprocess of apparatus 300. Alternatively or additionally, the initialvalues are the values most recently calculated the last time apparatus300 was operated. Further alternatively or additionally, the initialvalues are taken as a weighted average of values calculated in previousoperations of apparatus 300 and/or of factory calibrated values.

After the initial values of matrices 326 and 346 are assigned (100),mismatch trainer 377 accumulates (102) a predetermined number of vectorpairs (V_(m),V_(f)) of signals handled by apparatus 300 and combinesthem into combined vectors denoted by V _(f) and V _(m) , respectively.In some embodiments of the invention in which apparatus 300 comprises atransmitter, the predetermined number of accumulated pairs (V_(m),V_(f))comprises the pairs of a single transmission slot, which in an exemplaryembodiment includes 140 pairs (V_(m),V_(f)). Mismatch trainer 377 thenestimates (104) corrected values of parameters Φ=(θ₁,β₁,θ₂,β₂) whichminimize the cost function:C(Φ)=| V _(f) (Φ)^(j) −K V _(m) ^(j)|²  (5)(in which K is a desired gain of signals at the output of non-linearelement 330) for the accumulated vector pairs (V_(m),V_(f)). An optionalmethod for estimating the corrected values is described below withreference to FIG. 4. The estimated values of parameters Φ=(θ₁,β₁,θ₂,β₂)are then used to change (106) the values of matrices 326 and 346.

In some embodiments of the invention, cost functions other than definedby equation (5) are used, e.g., cost functions with other distancedefinitions than |x|², such as the absolute size of the differencevector or the maximal difference among the accumulated pairs(V_(m),V_(f)).

In some embodiments of the invention, the accumulation (102), estimation(104) and value assignment (106) are repeated for a predetermined numberof repetitions. In an exemplary embodiment of the invention, theaccumulation (102), estimation (104) and value assignment are repeatedfor about 10 repetitions. The number of repetitions may depend on theprocessing power of a processor performing the tasks of mismatch trainer377 and the time required for the processor to handle tasks other thanIQ mismatch cancellation. Alternatively, the accumulation (102),estimation (104) and value assignment (106) are repeated until asufficient accuracy is achieved, for example, until the cost functiondescribed by equation (5) is beneath a predetermined level.

Alternatively to adjusting all of parameters (θ₁,β₁,θ₂,β₂) concurrently,during some or all of the repetitions of accumulation (102), estimation(104) and value assignment (106) only a sub group of parameters(θ₁,β₁,θ₂,β₂) are adjusted while others are kept constant during thatrepetition. In one embodiment of the invention, each parameter isadjusted in separate repetitions and all the other parameters are keptconstant. In an exemplary embodiment of the invention, during a firstsequence of one or more repetitions, parameters (θ₁,β₁) are adjusted andduring a second sequence of one or more repetitions, parameters (θ₂,β₂)are adjusted. Optionally, additional repetitions are performedthereafter, in which parameters (θ₁,β₁) and/or (θ₂,β₂) are re-adjusted,for example, alternately. In an exemplary embodiment of the presentinvention, the total number of repetitions are divided equally betweenthe different parameters. Alternatively, more repetitions are performedfor a first group of parameters than for a second group of parameters,for example, when the inaccuracy in one of the elements causing the IQmismatch (e.g., non-linear element 340) is larger than the inaccuracy inanother element which causes the mismatch.

It is noted that the groups of parameters adjusted in differentrepetitions may include common parameters from (θ₁,β₁,θ₂,β₂).

In an embodiment of the invention, each parameter is adjusted separatelyuntil the value of cost equation (5) goes down by at least apredetermined percent and/or a predetermined number of repetitions areperformed. Mismatch trainer 377 then moves on to a different parameteruntil all the parameters are adjusted. Mismatch trainer 377 thenre-adjusts the previously adjusted parameters in the same or in adifferent order, until cost equation (5) reaches a desired level and/ora predetermined number of allowed repetitions has occurred.

After the predetermined number of repetitions have been performed and/orthe predetermined cost level is reached, mismatch trainer 377 optionallystores (108) the parameter values to be used in assigning (100) theinitial values in a later mismatch training of apparatus 300.

Alternatively to accumulating (102), for each repetition, vector pairs(V_(m),V_(f)) of symbols handled in a single slot, a greater or lessernumber of vector pairs (V_(m),V_(f)) may be accumulated for use in eachrepetition. For example, each repetition may be based on vector pairs oftwo slots, or half a slot. In some embodiments of the invention, eachrepetition is performed for a single pair (V_(m),V_(f)). In someembodiments of the invention, different numbers of vector pairs areaccumulated for different repetitions. In some embodiments of theinvention, a large number of pairs are accumulated for the earlyrepetitions which require relatively large adjustments and a smallernumber of pairs is accumulated for later adjustments. Alternatively oradditionally, different repetitions are used to adjust different numbersof parameters, and the number of accumulated pairs depends on the numberof adjusted parameters.

FIG. 4 is a flowchart of the actions performed in estimating (104)corrected values of parameters Φ==(θ₁,β₁,θ₂,β₂), in accordance with anembodiment of the present invention. In embodiments of the invention,mismatch trainer 377 approximates (120) unknown matrices A_(i) based onthe following equation: $\begin{matrix}{{{\hat{A}}_{i} \approx B_{i}^{- 1}} = \begin{bmatrix}{\beta_{i}{\cos\left( \theta_{i} \right)}} & {{- \beta_{i}}{\sin\left( \theta_{i} \right)}} \\{- {\sin\left( \theta_{i} \right)}} & {\cos\left( \theta_{i} \right)}\end{bmatrix}} & (6)\end{matrix}$in accordance with the assumption that the current values of parameters(θ₁,β₁,θ₂,β₂) are very close to$\left( {\varphi_{1},\frac{1}{b_{1}},\varphi_{2},\frac{1}{b_{2}}} \right),$respectively, and therefore A_(i)B_(i)≈I for i=1, 2.

In an embodiment of the invention, the above assumption is consideredfulfilled when the maximal mismatch of non-linear elements 320 and/or340 is about ±0.1 dB and ±1°, regardless of the values of parameters(θ₁,β₁,θ₂,β₂). Alternatively or additionally, the above assumption isconsidered fulfilled when the maximal mismatch of non-linear elements320 and/or 340 is about ±0.3 dB and ±3°, regardless of the values ofparameters (θ₁,β₁,θ₂,β₂). Further alternatively or additionally, factorymeasurements of parameters (θ₁,β₁,θ₂,β₂) are performed to a sufficientaccuracy such that the above assumption is substantially always true,given the initial values of the parameters. Further alternatively oradditionally, the method of FIG. 4 is used even in those cases in whichthe above assumption is not true.

For each of the accumulated vector pairs (V_(m),V_(f)), mismatch trainer377 estimates (124) the value of g_(I), g_(Q) for matrix G_(PA)(equation (3)). In an embodiment of the invention, for estimating g_(I),g_(Q) it is assumed that A_(i)B_(i)≈I for i=1, 2. Therefore, equation(4) can be stated as V_(f)≈G_(PA)V_(d), leading to an estimation ofG_(PA) given by: $\begin{matrix}{{\hat{G}}_{PA} = \frac{V_{f}V_{d}^{*}}{{V_{d}}^{2}}} & (7)\end{matrix}$wherein * denotes the complex conjugate operator. In an embodiment ofthe invention, V_(d) is calculated (122) from V_(m) using the contentsof LUT 384 (FIG. 2). Alternatively, mismatch trainer 377 receives therespective value of V_(d) together with each vector pair (V_(m),V_(f)).

In embodiments of the invention, for each vector pair (V_(m),V_(f)),mismatch trainer 377 evaluates (126) the partial derivatives (∂V_(f)/∂Φ^(i)) of the accumulated vectors V_(f), forming a combined vector (∂V_(f) /∂Φ ^(i) ) which includes the partial derivatives of the elementsof combined vector V _(f) , according to each one of the desiredparameters. In an embodiment of the invention, mismatch trainer 377evaluates (126) the partial derivatives using the following equations(8a-8d) which show (∂V_(f)/∂Φ ^(i)) for each of the parameters includedin Φ=(θ₁,β₁,θ₂,β₂). $\begin{matrix}{\frac{\partial V_{f}}{\partial\theta_{1}} = {{{\begin{bmatrix}{\cos\left( \theta_{2} \right)} & {\beta_{2}{\sin\left( \theta_{2} \right)}} \\{- {\sin\left( \theta_{2} \right)}} & {\beta_{2}{\cos\left( \theta_{2} \right)}}\end{bmatrix}\left\lbrack {\hat{G}}_{1} \right\rbrack}\begin{bmatrix}{- {\sin\left( \theta_{1} \right)}} & {\beta_{1}{\cos\left( \theta_{1} \right)}} \\{\cos\left( \theta_{1} \right)} & {{- \beta_{1}}{\sin\left( \theta_{1} \right)}}\end{bmatrix}}{\overset{\_}{V}}_{d}}} & \left( {8a} \right) \\{\frac{\partial V_{f}}{\partial\beta_{1}} = {{{\begin{bmatrix}{\cos\left( \theta_{2} \right)} & {\beta_{2}{\sin\left( \theta_{2} \right)}} \\{\sin\left( \theta_{2} \right)} & {\beta_{2}{\cos\left( \theta_{2} \right)}}\end{bmatrix}\left\lbrack {\hat{G}}_{1} \right\rbrack}\begin{bmatrix}0 & {\sin\left( \theta_{1} \right)} \\0 & {\cos\left( \theta_{1} \right)}\end{bmatrix}}{\overset{\_}{V}}_{d}}} & \left( {8b} \right) \\{\frac{\partial V_{f}}{\partial\theta_{2}} = {{{\begin{bmatrix}{- {\sin\left( \theta_{2} \right)}} & {\beta_{2}{\cos\left( \theta_{2} \right)}} \\{\cos\left( \theta_{2} \right)} & {{- \beta_{2}}{\sin\left( \theta_{2} \right)}}\end{bmatrix}\left\lbrack {\hat{G}}_{1} \right\rbrack}\begin{bmatrix}{\cos\left( \theta_{1} \right)} & {\beta_{1}{\sin\left( \theta_{1} \right)}} \\{\sin\left( \theta_{1} \right)} & {\beta_{1}{\cos\left( \theta_{1} \right)}}\end{bmatrix}}{\overset{\_}{V}}_{d}}} & \left( {8c} \right) \\{\frac{\partial V_{f}}{\partial\beta_{1}} = {{{\begin{bmatrix}0 & {\sin\left( \theta_{2} \right)} \\0 & {\cos\left( \theta_{2} \right)}\end{bmatrix}\left\lbrack {\hat{G}}_{1} \right\rbrack}\begin{bmatrix}{\cos\left( \theta_{1} \right)} & {\beta_{1}{\sin\left( \theta_{1} \right)}} \\{\sin\left( \theta_{1} \right)} & {\beta_{1}{\cos\left( \theta_{1} \right)}}\end{bmatrix}}{\overset{\_}{V}}_{d}}} & \left( {8d} \right)\end{matrix}$

In equations (8a-8d), matrix Ĝ₁ is an approximation of G₁=A₂G_(PA)A₁using the approximations of equations (6) and (7). It is noted thatV_(f) includes a term of the form$\frac{1}{{\cos\left( {2\theta_{1}} \right)}{\cos\left( {2\theta_{2}} \right)}}$(due to matrices B_(i)) which was ignored in generating equations(8a-8d). In an embodiment of the invention, the effect of this term isincluded in the step size μ of the iteration equation (10) described inthe following paragraph. Alternatively, in some embodiments, correctedequations taking into account the effect of this term are used insteadof equations (8a-8d).

The values of the combined vectors V _(f) ,V _(m) and (∂V _(f) /∂Φ ^(i)) are used to calculate the correction step of parametersΦ=(θ₁,β₁,θ₂,β₂). In embodiments of the invention, the correction stepsof the parameters are calculated by inserting (127) the combined vectorsinto the partial derivatives of the cost function of equation (5):$\begin{matrix}{\frac{\partial C}{\partial{\underset{\_}{\Phi}}^{i}} = {2\Re\left\{ {\left( \frac{{\partial V_{f}}\quad}{\underset{\_}{\partial{\underset{\_}{\Phi}}^{i}}} \right)^{H}\left\lbrack {\underset{\_}{V_{f}} - {K\underset{\_}{V_{m}}}} \right\rbrack} \right\}}} & (9)\end{matrix}$in which H denotes the Hermitian operator, and K is a desired gain ofsignals at the output of non-linear element 330. In some embodiments ofthe invention, K has a predetermined known value. Alternatively, K isestimated by mismatch trainer 377 (or by any other element of apparatus300) from pairs (V_(m),V_(f)) using methods known in the art.

In an exemplary embodiment of the present invention, parametersΦ=(θ₁,β₁,θ₂,β₂) are then adjusted (128) using the steepest descentvector iteration equation: $\begin{matrix}{{\underset{\_}{\Phi}}^{i - 1} = {{\underset{\_}{\Phi}}^{i} - {\mu\frac{\partial C}{\partial{\underset{\_}{\Phi}}^{i}}}}} & (10)\end{matrix}$in which μ is a predetermined step size.

In an embodiment of the invention, μ has a constant value throughout themismatch cancellation of apparatus 300. Alternatively, different valuesof μ may be used for at least some of the different repetitions of themethod of FIG. 3. In an exemplary embodiment of the invention, a valueof μ=0.2 is used in repetitions in which parameters for cancellation ofthe mismatch of non-linear element 320 are adjusted, and μ=0.31 is usedfor repetitions in which parameters for cancellation of the mismatch ofnon-linear element 340 are adjusted. Alternatively or additionally,different values of μ are used for different pairs (V_(m),V_(f)) duringa single repetition, i.e., μ depends on j in equation (10). Furtheralternatively or additionally, different values of t are used fordifferent ones of parameters Φ=(θ₁,β₁,θ₂,β₂).

In an alternative embodiment of the invention, the estimation (124) ofmatrix G_(PA) is performed using an average value of all the vectors(V_(m),V_(f)) accumulated 102 during the current repetition. Thus, theestimate of matrix G_(PA) does not depend on a single vector which maybe an outlier. In embodiments of the invention of this alternative, foreach repetition of accumulation (102), estimation (104) and valueassignment (106) the estimation of matrix G_(PA) is performed only onceas it does not depend on specific values of (V_(m),V_(f)).

Alternatively to using the steepest descent iteration equation (equation(10)), other iteration equations as are known from optimization theory,such as the conjugate gradient equation and the quasi-Newton equation,may be used. In some embodiments of the invention, the iterationequation used is chosen as a tradeoff between the processing power ofapparatus 300 and the required convergence speed of the parameters ofmatrices 326 and 346. If fast convergence is required and apparatus 300has a relatively high processing power level, a fast convergence methodwhich requires dense computation (e.g., the quasi-Newton method) may beused. If, however, low processing power utilization is more importantthan fast convergence, simpler methods, such as the steepest descentmethod, may be used.

Further alternatively, the assignment of the parameters of matrices 326and/or 346 is performed in a single batch step, optionally based on alarge amount of accumulated signals, or is performed adaptively.

FIG. 5 is a graph comparing a simulation performance of transmitter 30using mismatch trainer 77 in accordance with an embodiment of thepresent invention and a similar transmitter which does not perform IQmismatch cancellation. The transmission of transmitter 30 is performedon a channel with a bandwidth of ±21 KHz around a carrier frequency. Itis required that 50 KHz away from the carrier frequency the transmissionstrength be sufficiently low so as not to interfere with othertransmitters in the vicinity of transmitter 30. For example, theJapanese RCR27C standard requires that the adjacent channel power ratio(ACPR) of transmitters, be lower than −45 dB at 50 KHz away from thecarrier frequency and be lower than −60 dB at 100 KHz away from thecarrier frequency. As shown in FIG. 5, the ACPR at 50 KHz away from thecarrier frequency is −59.5 dB for transmitter 30 and only −51 dB for atransmitter without predistortion. The ACPR at 100 KHz away from thecarrier frequency is −66 dB for transmitter 30 and only −56 dB for atransmitter without predistortion.

In some embodiments of the invention, the method of adjustment of themismatch cancellation parameters described above is performed each timetransmitter 30 is switched on. In some embodiments of the invention, themismatch cancellation parameter adjustment method is performed togetherwith initialization methods of transmitter 30, such as delay adjustmentand setting predistortion values. In some embodiments of the invention,when transmitter 30 is first operated, a first transmitted slot ofsymbols is used for level control and/or delay adjustment of delay unit68. In some embodiments of the invention, the initial values ofparameters (θ₁,β₁,θ₂,β₂) are loaded into matrices 41 and 63 for use inthe transmission of the first slot of symbols. Alternatively, theinitial values of the parameters are loaded into matrices 41 and 63after the first slot or at substantially any other time point before thebeginning of the mismatch cancellation method. Second and third slotsare used for setting the values of LUT 84 and ten following slots areused for IQ mismatch cancellation. Thereafter the transmitted slots areused for continuous adjustment of the values of LUT 84. Alternatively oradditionally, the transmitted slots are used in any other order and/orone or more of the transmitted slots are used for a plurality of tasks.

Alternatively to performing the adjustment of the mismatch cancellationparameters in a single stage using current values of predistortion LUT84, the method of adjustment of the mismatch cancellation parameters isperformed in a plurality of stages separated by adjustment stages of thepredistortion LUT.

In embodiments of the invention, the mismatch cancellation method isperformed on regular data signals generated in the normal use oftransmitter 30. These values are chosen without relation to the mismatchcancellation. Alternatively, a special transmission is performed for themismatch cancellation method. Optionally, the signals of the specialtransmission are chosen as best suited for mismatch cancellation. Insome embodiments of the invention, the signals used in the mismatchcancellation method are at the power level at which transmitter 30normally operates.

In embodiments of the invention, in addition to, or instead of,performing mismatch cancellation when transmitter 30 is first operated,mismatch cancellation is performed periodically and/or when thetransmission conditions of transmitter 30 change substantially.

Although the above described embodiments show mismatch trainer 77 asreceiving the values V_(m), representing the samples before they reachmodulator 48, from interpolator 38, in other embodiments of theinvention, these values are received from other points beforepredistorter 80, e.g., from interpolator 36. Alternatively oradditionally, mismatch trainer 77 receives vectors V_(d) from afterpredistorter 80 instead of, or in addition to, vectors V_(m) from beforepredistorter 80. Vectors V_(m) may be calculated from vectors V_(d) bydividing by the respective value in LUT 84.

It is noted that some of the units of transmitter 30 may be implementedeither in software (on one or more processors) or in hardware. In anexemplary implementation of the embodiment of FIGS. 1A and 1B, modulator32, interpolators 36 and 38, predistorter 80, mismatch multipliers 40and 62, matrices 41 and 63, delay unit 68 and trainers 70 and 77 areimplemented in software on a single processor, such as a digital signalprocessor (DSP). In an exemplary embodiment, the remaining elements oftransmitter 30 are implemented in hardware. Alternatively, a greater orlesser number of the elements of transmitter 30 are implemented inhardware. For example, in some embodiments, interpolators 36 and/or 38are also implemented in hardware. In an embodiment of the invention,multiplier 40 is implemented in hardware and multiplier 62 isimplemented in software. Alternatively, both multipliers 40 and 62 areimplemented in either hardware or in software.

Apparatus 300 on which the present invention is implemented may includewireless or non-wireless transmitters (in base stations, handsets orotherwise), receivers, amplifiers and/or any other apparatus whichsuffers from IQ mismatch distortions. The present invention is notlimited to transmitters of any specific modulation method, but rathermay be used with substantially any non-constant envelope modulationmethods, including, but not limited to, MPSK, DPSK and QAM. Furthermore,the present invention is not limited to setting parameters of matrixmultipliers for cancellation of IQ mismatch effects. Rather, anymismatch adjustment circuitry (e.g., analog multipliers, filters) may beused to cancel the mismatch effect and the parameters of the mismatchadjustment circuitry are adjusted in accordance with the presentinvention.

It is further noted that mismatch trainer 77 may receive feedback valuesV_(f) which passed through elements other than shown in FIG. 2.Particularly, feedback values V_(f) may pass through additional or lessRF elements and/or different elements from power amplifier 23 and/or IQdemodulator 54. Furthermore, mismatch trainer 77 may assign values tomore or fewer mismatch multipliers (or other mismatch adjustmentcircuitry). In an exemplary embodiment of the invention, mismatchtrainer 77 assigns values only to a mismatch multiplier of modulator 48.

It will be appreciated that the above described methods may be varied inmany ways, including, changing the order of steps, and the exactimplementation used. It should also be appreciated that the abovedescribed description of methods and apparatus are to be interpreted asincluding apparatus for carrying out the methods and methods of usingthe apparatus.

The present invention has been described using non-limiting detaileddescriptions of embodiments thereof that are provided by way of exampleand are not intended to limit the scope of the invention. It should beunderstood that features described with respect to one embodiment may beused with other embodiments and that not all embodiments of theinvention have all of the features shown in a particular figure ordescribed with respect to one of the embodiments. Variations ofembodiments described will occur to persons of the art.

Structure and acts described herein are replaceable by equivalents whichperform the same function, even if the structure or acts are different,as known in the art. Therefore, the scope of the invention is limitedonly by the elements and limitations as used in the claims. When used inthe following claims, the terms “comprise”, “include”, “have” and theirconjugates mean “including but not limited to”.

1. A method of assigning values to parameters for IQ mismatchcancellation, comprising: providing values to a processing path of acommunication device; passing the provided values through an IQmodulator, at least one non-linear element and an IQ demodulator, toproduce distorted values; and estimating at least one parameter forcancellation of IQ mismatch effects of the communication deviceresponsive to the provided values and to the distorted values.
 2. Amethod according to claim 1, wherein estimating the at least oneparameter comprises estimating the at least one parameter responsive tothe provided values and to the distorted values, without additionalvalues passed through a sub-group of the IQ modulator, the at least onenon-linear element and the IQ demodulator.
 3. A method according toclaim 1, wherein estimating the at least one parameter comprisesestimating at least one parameter, respectively, for each of the IQmodulator and the IQ demodulator.
 4. A method according to claim 1,wherein passing the values through the IQ modulator and the IQdemodulator comprises passing the values through the IQ modulator in theprocessing path and through an IQ demodulator in a reverse path of thecommunication device.
 5. A method according to claim 1, wherein passingthe values through at least one non-linear elements comprises passingthe values through a power amplifier.
 6. A method according to claim 1,wherein providing values to a processing path of a communication devicecomprises providing values to a processing path of a transmitter.
 7. Amethod according to claim 1, wherein estimating the at least oneparameter comprises accumulating a predetermined number of pairs ofprovided values and respective distorted values and estimating from theaccumulated pairs.
 8. A method according to claim 7, wherein thecommunication device comprises a transmitter and accumulating apredetermined number of pairs comprises accumulating a number of pairstransmitted during a single transmission slot.
 9. A method according toclaim 1, wherein passing the values through elements to producedistorted values comprises passing also through at least one multiplierwhich performs IQ mismatch cancellation based on current values of theat least one parameter which is to be estimated.
 10. A method accordingto claim 9, wherein estimating the at least one parameter comprisesdetermining a next step correction of the current value of the at leastone parameter.
 11. A method according to claim 1, comprising repeatingthe estimating of the at least one parameter a predetermined number ofrepetitions.
 12. A method according to claim 1, comprising retrievingfrom storage initial values of the at least one parameter.
 13. A methodaccording to claim 1, comprising storing the estimated value of the atleast one parameter for later use.
 14. A method according to claim 1,wherein providing the values to the processing path comprises providingvalues generated for the IQ mismatch cancellation method.
 15. A methodaccording to claim 1, wherein providing the values to the processingpath comprises providing values generated without relation to the IQmismatch cancellation method.
 16. A method according to claim 1, whereinpassing the provided values through the at least one non-linear elementcomprises passing the values through at least one non-linear elementwhich has a gain which depends on the magnitude of its input signal. 17.A method of assigning values to parameters for IQ mismatch cancellation,comprising: estimating a complex-valued base band equivalent gain of anamplification unit of a communication device; approximating values ofone or more matrices representing an IQ mismatch effect of thecommunication device based on current values of at least one parameterfor cancellation of the IQ mismatch effect; and selecting a next stepvalue of the at least one parameter for cancellation of the IQ mismatcheffect, which next step values minimize a cost function which depends onvalues passed through the communication device and depends on theestimated complex-valued gain and the approximated one or more matrices.18. A method according to claim 17, wherein estimating the complexvalued gain comprises estimating separately for each value passedthrough the communication device.
 19. A method according to claim 17,wherein estimating the complex valued gain comprises estimating once fora plurality of accumulated values passed through the communicationdevice.
 20. A trainer for an IQ mismatch cancellation unit of acommunication device including at least an IQ modulator and an IQdemodulator along a sequential path, comprising: a first input adaptedto receive values from before an entrance to the first of the IQmodulator and the IQ demodulator along the sequential path; a secondinput adapted to receive values from after an output of the last of theIQ modulator and the IQ demodulator along the sequential path; and adetermination unit adapted to determine at least one parameter of thecancellation unit responsive to values on both the first and secondinputs.
 21. A trainer according to claim 20, wherein the trainer doesnot have inputs from any point between the IQ modulator and the IQdemodulator.
 22. A trainer according to claim 20, wherein the sequentialpath includes a non-linear element between the IQ modulator and the IQdemodulator.
 23. A trainer according to claim 20, wherein thedetermination unit is adapted to determine a corrected value of the atleast one parameter which minimizes a cost function based on valuesreceived from both the first and second inputs.
 24. A trainer accordingto claim 20, wherein the determination unit is adapted to determine atleast one parameter for each of at least two cancellation units.
 25. Atrainer according to claim 20, wherein the determination unit is adaptedto determine the at least one parameter iteratively.
 26. A transmitter,comprising: an IQ modulator; an IQ demodulator adapted to receive valuesfrom after an output of the modulator; mismatch adjustment circuitryadapted to compensate for mismatch effects of the modulator; and amismatch trainer adapted to adjust at least one parameter of themismatch adjustment circuitry responsive to values entering themodulator and respective values from the output of the demodulator. 27.A transmitter according to claim 26, wherein the demodulator is part ofa reverse conversion path of the transmitter.
 28. A transmitteraccording to claim 26, comprising a power amplifier between themodulator and the demodulator.
 29. A transmitter, comprising: an IQmodulator; a predistorter adapted to predistort values entering themodulator; a predistorter trainer adapted to adjust parameters of thepredistorter; mismatch adjustment circuitry adapted to adjust signalsentering the IQ modulator in order to cancel mismatch effects of themodulator; a mismatch trainer adapted to adjust at least one parameterof the mismatch adjustment circuitry; and a feedback conversion unitadapted to convert signals which passed through the IQ modulator back tobase band and to provide the converted signals to the mismatch trainerand the predistorter trainer.
 30. A transmitter according to claim 29,comprising a power amplifier adapted to receive signals from the IQmodulator and wherein the feedback conversion unit is adapted to convertto base band, signals which passed through the power amplifier.
 31. Atransmitter according to claim 29, wherein the feedback conversion unitcomprises a demodulator and a mismatch multiplier of the demodulator andthe mismatch trainer is adapted to adjust parameters of the mismatchmultiplier of the demodulator.
 32. A transmitter according to claim 29,wherein the mismatch adjustment circuitry comprises a matrix multiplier.33. A transmitter according to claim 29, wherein the mismatch trainer isadapted to adjust the at least one parameter of the mismatch adjustmentcircuitry iteratively.
 34. A transmitter according to claim 29,comprising a processor which includes the predistorter, the predistortertrainer, the mismatch adjustment circuitry and the mismatch trainer. 35.A method of assigning values to parameters for IQ mismatch cancellationof a transmitter, comprising: transmitting values by the transmitter;estimating at least one parameter for cancellation of IQ mismatcheffects of the transmitter responsive to the values transmitted during afirst period; and adjusting the at least one parameter estimatedresponsive to the values transmitted during a first period responsive tovalues transmitted during a second period, which second period isseparated from the first period by a rest period in which thetransmitted values are not used to adjust parameters for IQ mismatchcancellation.
 36. A method according to claim 35, wherein the valuestransmitted during the rest period are used for adjusting a predistorterof the transmitter.
 37. A method according to claim 36, comprisingadjusting the predistorter based on values transmitted before the firstperiod.